package fr.ralmn.OgameDroid.Object;

import android.graphics.YuvImage;
import fr.ralmn.OgameDroid.Object.Dependence.Require;

public class Technologie {

	protected int base_metal, base_cristal, base_deute;
	protected String name, desc;
	protected int icon;
	protected Require require;
	/**
	 * 
	 * @param n Nom
	 * @param d description
	 * @param bm Cout en metal au niveau 1
	 * @param bc Cout en cristal au niveau 1
	 * @param bd Cout en deuterium au niveau 1
	 * @param id Id de l'image
	 */
	public Technologie(String n, String d, int bm, int bc, int bd, int id){
		name = n;
		desc = d;
		base_metal = bm;
		base_cristal = bc;
		base_deute = bd;
		icon = id;
	}
	
	/**
	 * 
	 * @param lvl Niveaux de la technologie
	 * @return Coup en metal de la techonlogie
	 */
	public int getCoastMetal(int lvl){
		
		int r = 0;
		
		for(int i = 0; i<= lvl; i++){
			r += base_metal;
		}
		return r;
	}
	public int getBase_metal() {
		return base_metal;
	}


	public int getBase_cristal() {
		return base_cristal;
	}


	public int getBase_deute() {
		return base_deute;
	}


	public String getName() {
		return name;
	}


	public String getDesc() {
		return desc;
	}


	public int getIcon() {
		return icon;
	}


	/**
	 * 
	 * @param lvl Niveaux de la technologie
	 * @return Coup en Cristal de la techonlogie
	 */
	public int getCoastCristal(int lvl){
		
		int r = 0;
		
		for(int i = 0; i<= lvl; i++){
			r += base_cristal;
		}
		return r;
	}
	/**
	 * 
	 * @param lvl Niveaux de la technologie
	 * @return Coup en Deuterium de la techonlogie
	 */
	public int getCoastDeuterium(int lvl){
		
		int r = 0;
		
		for(int i = 0; i<= lvl; i++){
			r += base_deute;
		}
		return r;
	}


	public Require getRequire() {
		return require;
	}


	public Technologie setRequire(Require require) {
		this.require = require;
		return this;
	}
	
	
}
